/* 
 * File:   tracer.h
 * Author: alexey
 *
 * Created on 5 Апрель 2011 г., 18:14
 */

#ifndef TRACER_H
#define	TRACER_H

#include <ITracer.h>
#include <iostream>
#include <fstream>

namespace storagemon
{

class tracer : public ITracer
{
public:
    tracer();
    ~tracer();

    void SetLevel(TraceLevel level);
    void Open(const char* target);
    void Write(const char* data, TraceLevel level);
    void Close();
private:
    TraceLevel m_level;
    std::ofstream m_file;
    bool m_console;
};

} // storagemon
#endif	/* TRACER_H */

